package service_metier;

import javax.faces.component.UIData;
import javax.faces.event.ActionEvent;

import model.Personne;
import model.Video;

import ctx.ContexteUtilisateur;

public class SelectionVideo {
	
	private UIData tableauListeVideo;
	private ContexteUtilisateur contexteUtilisateur;
	
	//Initialisation pour l'ajout d'un film
	public void ajouterFilm(ActionEvent e) {
		contexteUtilisateur.setWatchingDetailFilm(false);
		contexteUtilisateur.setWatchingDetailPersonne(false);
		contexteUtilisateur.setWatchingListeFilm(false);
		contexteUtilisateur.setWatchingListePersonne(false);
		contexteUtilisateur.setWatchingModifPersonne(false);
		
		contexteUtilisateur.setWatchingModifFilm(true);		
		
		int indexTemp = contexteUtilisateur.getSizeListeVideo();
		int indexPers = contexteUtilisateur.getSizeListePersonne();
		
		Video videoTemp = new Video("Titre", null, "./default.jpg",null, String.valueOf(indexTemp), null);
		contexteUtilisateur.setIndexFilmModif(indexTemp);
		contexteUtilisateur.setVideoSelect(videoTemp);
		contexteUtilisateur.setPersonneSelect(new Personne("nom","prenom", indexPers));
		
	}
	
	//S�lection d'une personne
	public String selectFilm() {
		Video vid = (Video) tableauListeVideo.getRowData();
		contexteUtilisateur.setVideoSelect(new Video(vid));
		contexteUtilisateur.setWatchingDetailFilm(true);
		contexteUtilisateur.setWatchingModifFilm(false);	
		return "film";
	}
	
	//Suppression d'une personne
	public String enleverFilm(){
		Video vid = (Video) tableauListeVideo.getRowData();
		contexteUtilisateur.setVideoSelect(new Video(vid));
		int indexVid = Utilitaires.indexOf(vid, contexteUtilisateur.getListeAllFilm());
		contexteUtilisateur.getListeAllFilm().remove(indexVid);
		contexteUtilisateur.updateListeRechercheVideo();
		
		contexteUtilisateur.setWatchingDetailFilm(true);
		contexteUtilisateur.setWatchingModifFilm(false);	
		return "film";
	}
	
	//Modification d'un film
	public String modifFilm() {
		Video vid = (Video) tableauListeVideo.getRowData();					
		contexteUtilisateur.setIndexFilmModif(Utilitaires.indexOf(vid,contexteUtilisateur.getListeAllFilm()));			
		contexteUtilisateur.setVideoSelect(new Video(vid));
		Personne pTemp = new Personne(); 
		pTemp.setNom("nom"); pTemp.setPrenom("prenom");
		pTemp.setReference(contexteUtilisateur.getSizeListePersonne());
		contexteUtilisateur.setPersonneSelect(pTemp);
		contexteUtilisateur.setWatchingDetailFilm(false);	
		contexteUtilisateur.setWatchingModifFilm(true);	
		
		contexteUtilisateur.setPersonneSelect(new Personne());
		
		return "film";
	}
	

	public void setContexteUtilisateur(ContexteUtilisateur contexteUtilisateur) {
		this.contexteUtilisateur = contexteUtilisateur;
	}
	public ContexteUtilisateur getContexteUtilisateur() {
		return contexteUtilisateur;
	}
	public void setTableauListeVideo(final UIData tableauListeVideo) {
		this.tableauListeVideo = tableauListeVideo;
	}
	public UIData getTableauListeVideo() {
		return tableauListeVideo;
	}
}
